名称:RS232发送
符号:RS232_SEND
说明:
本体RS232串口配置为自由协议时,使用本功能块实现数据发送。
图片:
参数:
| 参数名称 | 数据类型 | IN/OUT | 参数作用 | 说明 |
|---|---|---|---|---|
| EXECUTE | BOOL | IN | 功能块触发 | 上升沿触发功能块执行 |
| DATA | REF_TO BYTE | IN | 数据首地址 | 待发送数据块首地址(不可为空/NULL) |
| LENGTH | WORD | IN | 数据长度 | 数据长度(不可大于DATA实际大小) |
| DONE | BOOL | OUT | 成功标志 | 是否发送成功,TRUE:发送成功 |
| ERROR | BOOL | OUT | 错误标志 | 是否发生错误,TRUE:发送出错 |
| ERRORID | UDINT | OUT | 错误码 | 0:正常;其它:错误码值 |
错误码:
| 错误码 | 说明 |
|---|---|
| 0 | 无错误 |
| 1 | 发送数据过长 |
| 2 | 发送数据过快 |
| 5 | 端口未配置为自由协议 |
| 6 | 数据首地址为空 |
示例:
LD:
ST:
解释:
当“ExecuteSend1”操作数的信号状态从“0”变为“1”时,执行该指令,把"DataSend1"数组里的"10"个字节数发送出去。每检测到一个信号上升沿,就执行一次发送。
当正在执行发送的时候,成功执行完毕之后,“IsDone”输出的信号状态就为“1”。